Stepper motor gauges are being used increasingly in vehicle displays instead of traditional air core gauges because they exhibit improved accuracy, linearity, lower power consumption and they are in some respects easier to drive from a microprocessor. FIG. 1 shows a typical stepper motor application which includes a motor 10 driving a pointer 12 around a dial having graphical indicia 14. A zero indicia 16 at one end of the dial marks the beginning point of gauge measurement such as 0 MPH or Empty fuel level. The pointer is shown in a rest or home position at or near the zero position and a mechanical stop 18 (on the dial or elsewhere in the mechanism) prevents pointer excursion more than a slight amount below the rest position. A microprocessor 20 including a non-volatile memory (NVM) 22 and associated drive circuits 24 is coupled to two drive coils 26 and 28 of the motor 10, shown in FIG. 2.
The stepper motor described herein is a two pole motor but it should be understood that the invention is equally applicable to motors having a larger number of pole sets. The stepper motor 10 has a magnetically soft iron core 30 having first and second legs 32 and 34 wound with drive coils 26 and 28, respectively, and a common center leg 36. The three legs meet at a rotor 38 to supply a rotating electrical field to the rotor. The rotor 38 in this case is a two pole permanent magnet which rotates to align with the electrical field vector. The rotor is coupled to the pointer 12 through a gear train, not shown. The two motor coils 26 and 28 are energized by drive currents 26' and 28' controlled by the drive electronics in the manner shown in FIG. 3. By controlling the magnitude and sequencing of the drive current waveforms, the rotor 38 can be made to rotate either in a forward (clockwise in this case) or reverse direction. The two waveforms are varied in a stepped pseudo-sinusoidal manner and the waveforms are separated by 60.degree. of phase. Discrete current levels are output onto the two coils for each of 32 steps which comprise 360.degree. of field rotation (for a two pole motor). as well as rotor movement if the rotor movement is not obstructed by the stop 18. Other numbers of steps, e.g. 24, could be used. The steps are controlled by a counter which is incremented or decremented at a controlled rate, depending on the desired direction and speed of rotation. The counter overflows or underflows every 32 steps and the sequence is repeated. Most stepper motor mechanisms use a gear train to reduce the angular motion of the rotor to allow for precise positional placement of the pointer and to enhance the fluid appearance of the pointer motion. The gain on the gear train is often in the range from 20:1 to 180:1. Where the gear train has a gear ratio of 180:1, 360.degree. of rotor rotation or 32 steps thus correspond to 2.degree. of pointer movement.
In some stepper motors, the geometry of the motor core provides two natural stable or detent points for the two pole rotor. These points are important when considering the behavior of the motor when the cluster is powered down. When power is removed from the motor, the rotor assumes a position at the closest one of the two detent points and is used as a rest point. Other stepper motors are designed to minimize the stable detent effect, and when power is removed from the motor the rotor remains stationary due to friction. In this case, any point may be selected as a rest point.
When a gauge is driven in reverse against the stop 18 and the drive current continues to rotate the field, the gauge will be biased against the stop until the field rotates more than 180.degree. beyond the stop (for a two pole motor). Then the rotor becomes unstable and moves 180.degree. in the forward direction or "flips back" to align with the field. This is shown in FIG. 4. Thus as the counter number decrements (starting at the right) the rotor moves toward the stop location, and when it reaches the stop it remains stationary for 16 counts and then flips back 180.degree. of the rotor or 1.degree. of the pointer. This cycle is repeated as long as the counter continues to decrement.
Gauges used in vehicle instrument clusters must often be accurate within a fraction of a degree of pointer rotation. Stepper motor gauges are usually operated in an open loop which makes it essential that the zero position is accurately known at all times during normal operation. A fixed number of steps forward from the starting position corresponds to the pointer display angle and any errors which might occur in counting the steps cause a display error which accumulates indefinitely during the life of the vehicle unless some measures are taken to calibrate the mechanism from time to time. There are a number of potential sources of stepping errors including vehicle transients, abnormally high accelerations which might be encountered during vehicle accidents or severe bumps, and movement of the pointer during instrument cluster assembly. One of the advantages of using the stepper motors is that precisely balanced pointers are not required and therefore accelerations encountered by them can cause them to exert torque on the mechanism.
A traditional way of assuring the pointer starts at the rest position upon vehicle start up is to rotate the motor field several degrees in reverse to move the pointer against the stop to correct for any position errors that have occurred. If the driving circuit detects that the battery voltage had been disconnected since the last power-down, then the field is rotated for a considerable angle to accommodate the possibility that the pointer had been left stranded far from the stop. Because of the flip back phenomenon, the pointer may flutter through several cycles. The flutter causes an objectionable acoustic noise to be generated. Moreover, the flip back causes an uncertainty of up to 1.degree. in the position of the pointer.
Another way of addressing the zeroing problem is to use circuits to detect the flip back event and then to stop the motion against the stop. When the rotor flips back a small current is induced in the coils and can be used to detect the flip back. The exact electrical angle at which flip back occurs is measured during the assembly of the cluster and is stored in the microprocessor non-volatile memory. During start-up, the pointer is driven in the direction of the stop until flip back is detected and then the pointer is advanced a small amount to the graphics zero position which is at least 1/2 rotor revolution forward of the stop. Two problems result from this method. First, the flip back detection circuit may cause increased cost of the gauge by adding extra elements and even by requiring an expensive IC integration process. Second, the pointer moves slightly below the normal operating area on the gauge graphics during power-up. This excursion below zero may cause the driver to misinterpret the lowest location of gauge movement which can be a significant perceptual error, for example on a fuel gauge.